#include <bits/stdc++.h>
using namespace std;
const int N=2e5+50;
int n,m;
int x[N],a[N],c[N],p[N];
int main(void){
    scanf("%d%d",&n,&m);
    for(int i=1;i<=n+m;i++){
        scanf("%d",&x[i]);
    }
    int k=1;
    for(int i=1;i<=n+m;i++){
        scanf("%d",&p[i]);
        if(p[i]==1){
            c[k]=x[i];
            a[k++]=0;
        }
    }
    int t=0;
    if(m==1){
        printf("%d\n",n+m-1);
        return 0;
    }
    //printf("%d\n",c[1]);
    for(int i=1;i<=n+m;i++){
        if(x[i]<c[1]){
            a[1]++;
            continue;
        }else if(x[i]>c[m]){
            a[m]++;
            continue;
        }else if(p[i]==1){
            t++;
            continue;
        }
        if(c[t+1]+c[t]<x[i]*2){
            a[t+1]++;
        }else{
            a[t]++;
        }
    }
    for(int i=1;i<=m;i++){
        if(i!=1){
            printf(" ");
        }
        printf("%d",a[i]);
    }
    printf("\n");
    return 0;
}